1. Field of the Invention
This invention relates to a high speed hidden surface processor which employs a hidden surface algoritm to distinguish the hidden and visible surfaces of a three-dimensional solid object relative to an arbitrary viewpoint. The present hidden surface processor has particular application to a computer graphics system by which a realistic two-dimensional representation of the object can be projected on a video display.
2. Prior Art
Computer graphics or computer-generated imagery systems are presently available to project realistic, three-dimensional pictures of a solid object on a video display. More particularly, computer graphics systems are known which are capable of displaying full color perspective views of objects and scenes, so that a realistic image or scene may be accurately portrayed. Such computer graphics systems are especially adapted for any of several different applications including, but not limited to, flight simulation techniques, computer aided design, architectural planning, and mathematical modeling. As will be known to those skilled in the art, conventional computer-generated imagery or graphics systems are capable of displaying pictures of three dimensional objects, which objects are typically defined by a plurality of mathematical elements, such as polygons, surface patches, and other higher order surfaces. That is, stored computer data is used to generate an array of scan lines, one scan line at a time, with a particular array of such scan lines defining a polygon, or the like. More particularly, each scan line has a length of several pixels which, when displayed, may represent portions of one or more polygons. The alignment of pluralities of successive scan lines forms a picture to be displayed.
However, to accurately display a realistic three-dimensional image or scene, it is essential to identify the polygon segments which are located closest to a viewpoint. In a realistic setting, certain objects may be either totally or partially obstructed by forward-lying, other objects. In order for three-dimensional objects in a scene to be projected on a two-dimensional video screen, a computer graphics system must have means by which to distinguish the relative positions of the objects, so as not to display any object or portion thereof which would be hidden when observed from the viewpoint. Accordingly, the visible surfaces of a scene which are located in closest proximity to the viewpont must be identified in order that only those scan line segments which are representative of such visible surfaces will be displayed across the video screen.
Processors which define (and remove or truncate) hidden surfaces are commercially known. However, such processors are commonly characterized by one or more of the following shortcomings. More particularly, many processors are not capable of high speed operation, such as, for example, at rates approaching real time, where at least 30 picture frames per second must be generated. Moreover, other processors are fabricated from an arrangement of hardware components and microelectronic devices which have proven relatively costly to implement and difficult to use, especially when vast amounts of video data is to be generated at a rate approaching real time. What is more, still other processors are controlled by a relatively complex hidden surface algorithm which has minimized efficiency and increased throughput delay in the computer graphics system with which the hidden surface processor is interfaced.
Examples of apparatus which have the capability of distinguishing the hidden and visible surfaces of a solid object, so that a realistic three-dimensional representation of the object can be displayed on a video screen are available by referring to one or more of the following U.S. Patents:
______________________________________ U.S. Pat. No. Publication Date ______________________________________ 3,602,702 August 31, 1971 3,621,214 November 16, 1971 3,665,408 May 23, 1972 3,736,564 May 29, 1973 3,944,997 March 16, 1976 ______________________________________